package com.ruoyi.my.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.my.mapper.SysAdminMapper;
import com.ruoyi.my.domain.SysAdmin;
import com.ruoyi.my.service.ISysAdminService;

/**
 * 管理员Service业务层处理
 * 
 * @author ruoyi
 * @date 2024-11-24
 */
@Service
public class SysAdminServiceImpl implements ISysAdminService 
{
    @Autowired
    private SysAdminMapper sysAdminMapper;

    /**
     * 查询管理员
     * 
     * @param id 管理员主键
     * @return 管理员
     */
    @Override
    public SysAdmin selectSysAdminById(Long id)
    {
        return sysAdminMapper.selectSysAdminById(id);
    }

    /**
     * 查询管理员列表
     * 
     * @param sysAdmin 管理员
     * @return 管理员
     */
    @Override
    public List<SysAdmin> selectSysAdminList(SysAdmin sysAdmin)
    {
        return sysAdminMapper.selectSysAdminList(sysAdmin);
    }

    /**
     * 新增管理员
     * 
     * @param sysAdmin 管理员
     * @return 结果
     */
    @Override
    public int insertSysAdmin(SysAdmin sysAdmin)
    {
        sysAdmin.setCreateTime(DateUtils.getNowDate());
        sysAdmin.setCreateUser(SecurityUtils.getUsername());
//        SecurityUtils.getUserId()
        return sysAdminMapper.insertSysAdmin(sysAdmin);
    }

    /**
     * 修改管理员
     * 
     * @param sysAdmin 管理员
     * @return 结果
     */
    @Override
    public int updateSysAdmin(SysAdmin sysAdmin)
    {
        sysAdmin.setUpdateTime(DateUtils.getNowDate());
        return sysAdminMapper.updateSysAdmin(sysAdmin);
    }

    /**
     * 批量删除管理员
     * 
     * @param ids 需要删除的管理员主键
     * @return 结果
     */
    @Override
    public int deleteSysAdminByIds(Long[] ids)
    {
        return sysAdminMapper.deleteSysAdminByIds(ids);
    }

    /**
     * 删除管理员信息
     * 
     * @param id 管理员主键
     * @return 结果
     */
    @Override
    public int deleteSysAdminById(Long id)
    {
        return sysAdminMapper.deleteSysAdminById(id);
    }

    @Override
    public SysAdmin selectAdminByUserName(String username) {
        return sysAdminMapper.selectAdminByUserName(username);
    }
}
